/*
 * @Description: Dog
 * @Author: rendc
 * @Date: 2025-07-31 09:52:55
 * @LastEditors: rendc
 * @LastEditTime: 2025-07-31 11:16:04
 */
// 继承Animal类
public class Dog extends Animal {
  // 继承的属性
  // 私有成员属性 color 无法直接使用
  // 但是可以通过getColor和setColor使用
  // private String color;
  // 非私有成员属性 age 可以直接使用
  // 也可以通过getAge和setAge使用
  // public int age;
  // 子类新增属性
  private String name;
  // 子类私有的age 和 父类 的age 同名
  private int age = 0;

  public void showAge() {
    System.out.println("age:" + age);
    System.out.println("this.age:" + this.age);
    System.out.println("super.age:" + super.age);
  }

  public void showAge(int age) {
    System.out.println("age:" + age); // 99
    // System.out.println("this.age:" + this.age); // 0
    System.out.println("super.age:" + super.age); // -1
  }

  // 子类的get、set方法
  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  // 子类新增disp方法
  public void disp() {
    // 调用父类公开方法访问
    // System.out.println("继承的私有color："+color);
    System.out.println("继承的私有color：" + getColor());
    System.out.println("继承的非私有属性age：" + age);
    System.out.println("子类新增的name：" + name);
  }
}